OpenStack Heat
當系統一大要管理的東西就會隨即增加,這時候就必須要一個軟件來管理全部的套件API,他可以透過模板化的方式進行部屬,這樣一來安裝就可以省下許多時間來去建立虛擬機,或是由其他軟體來創建虛擬機。
1.登入mysql
sudo mysql -u root -p
2.建立資料表
CREATE DATABASE heat;
3.設定安全性
GRANT ALL PRIVILEGES ON heat.* TO 'heat'@'localhost' IDENTIFIED BY 'HEAT資料庫密碼';
GRANT ALL PRIVILEGES ON heat.* TO 'heat'@'%' IDENTIFIED BY 'HEAT資料庫密碼';
1.登入admin管理者指令模式
2.建立使用者
openstack user create --domain default --password-prompt heat
3.將使用者加入服務群組中
openstack role add --project service --user heat admin
4.建立服務
openstack service create --name heat --description "Orchestration" orchestration
openstack service create --name heat-cfn --description "Orchestration" cloudformation
5.開啟服務port
openstack endpoint create --region RegionOne orchestration \
public http://controller:8004/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne orchestration \
internal http://controller:8004/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne orchestration \
admin http://controller:8004/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne cloudformation \
public http://controller:8000/v1
openstack endpoint create --region RegionOne cloudformation \
internal http://controller:8000/v1
openstack endpoint create --region RegionOne cloudformation \
admin http://controller:8000/v1
6.新增一個domin
openstack domain create --description "Stack projects and users" heat
7.建立使用者並加入剛剛的群組
openstack user create --domain heat --password-prompt heat_domain_admin
8.將建立的使用者加入domin中
openstack role add --domain heat --user-domain heat --user heat_domain_admin admin
9.建立規則
openstack role create heat_stack_owner
10.將demo使用者加進新增的服務中
openstack role add --project demo --user demo heat_stack_owner
11.建立heat_stack_user規則
openstack role create heat_stack_user
1.安裝套件
sudo apt-get install heat-api heat-api-cfn heat-engine -y
2.編輯Heat.conf設定檔
sudo vim /etc/heat/heat.conf
[DEFAULT]
#訊息服務
rpc_backend = rabbit
#設定metadata
heat_metadata_server_url = http://controller:8000
heat_waitcondition_server_url = http://controller:8000/v1/waitcondition
#設定stack domin加上安全認證
stack_domain_admin = heat_domain_admin
stack_domain_admin_password = HEAT_DOMAIN密碼
stack_user_domain_name = heat
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = AMQP密碼
[database]
connection = mysql+pymysql://heat:HEAT資料庫密碼@controller/heat
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = heat
password = HEAT密碼
[trustee]
auth_type = password
auth_url = http://controller:35357
username = heat
password = HEAT密碼
user_domain_name = default
[clients_keystone]
auth_uri = http://controller:35357
[ec2authtoken]
auth_uri = http://controller:5000
3.設定檔同步到資料庫
sudo su -s /bin/sh -c "heat-manage db_sync" heat
4.重啟服務
sudo service heat-api restart
sudo service heat-api-cfn restart
sudo service heat-engine restart
5.驗證服務
openstack orchestration service list
之後會再講到Mangum的container的服務,他也是運用heat進行編配服務的,如果後期服務壯大之後就需要用它來管理其他服務。
希望大家可以在這一個月中讀到非常多的應用技巧,那如果有問題可以以私訊我的方式是使用問題回復,我會盡可能地回答問題,那會在後面統一做回覆,或者如果有想知道的相關的應用也可以提出討論喔。